<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no" />
  <meta http-equiv="X-UA-Compatible" content="IE=Edge,Chrome=1" />
  <title>Document</title>
</head>

<body>

  <script>
    /**
     * 操作
     */

    /** copy
     * 拷贝当前选中内容到剪贴板。启用这个功能的条件因浏览器不同而不同，而且不同时期，其启用条件也不尽相同。使用之前请检查浏览器兼容表，以确定是否可用。 */
    document.execCommand('Copy', 'false', null);

    /** cut
     * 剪贴当前选中的文字并复制到剪贴板。启用这个功能的条件因浏览器不同而不同，而且不同时期，其启用条件也不尽相同。使用之前请检查浏览器兼容表，以确定是否可用。 */
    document.execCommand('Cut', 'false', null);

    /** paste
     * 在光标位置粘贴剪贴板的内容，如果有被选中的内容，会被替换 */
    document.execCommand('paste', 'false', null);

    /** delete
     * 删除选中部分 */
    document.execCommand('delete', 'false', null);

    /** forwardDelete
     * 删除光标所在位置的字符。 和按下删除键一样。 */
    document.execCommand('forwardDelete', 'false', null);

    /** redo
     * 重做被撤销的操作。 */
    document.execCommand('redo', 'false', null);

    /*** undo
     * 撤销最近执行的命令。 */
    document.execCommand('undo', 'false', null);

    /** insertText
     * 在光标插入位置插入文本内容或者覆盖所选的文本内容。 */
    document.execCommand('insertText', 'false', sText);

    /** selectAll
     * 选中编辑区里的全部内容。 */
    document.execCommand('selectAll', 'false', null);

    /***  Open
     * 相当于单击文件中的打开按钮 */
    document.execCommand("Open");

    /** ClearAuthenticationCache
     * 清除缓存中的所有身份验证凭据。 */
    document.execCommand('ClearAuthenticationCache', 'false', null);

    /** contentReadOnly
     * 通过传入一个布尔类型的参数来使能文档内容的可编辑性。(IE浏览器不支持) */
    document.execCommand('contentReadOnly', 'false', sBoolen);




    /**
     * 编辑器相关 
     */

    /** backColor
     * 修改文档的背景颜色。在styleWithCss模式下，则只影响容器元素的背景颜色。这需要一个<color> 类型的字符串值作为参数传入。注意，IE浏览器用这个设置文字的背景颜色。*/
    document.execCommand('BackColor', 'false', sColor);

    /** defaultParagraphSeparator
     * 更改在可编辑文本区域中创建新段落时使用的段落分隔符。 */
    document.execCommand('defaultParagraphSeparator', 'false', 'br');

    /** enableAbsolutePositionEditor
     * 启用或禁用允许移动绝对定位元素的抓取器。Firefox 63 Beta/Dev Edition 默认禁用此功能(bug 1449564)。 */
    document.execCommand('enableAbsolutePositionEditor', 'false', null);

    /** enableInlineTableEditing
     * 启用或禁用表格行和列插入和删除控件。(IE浏览器不支持) */
    document.execCommand('enableInlineTableEditing', 'false', null);

    /** enableObjectResizing
     * 启用或禁用图像和其他对象的大小可调整大小手柄。(IE浏览器不支持) */
    document.execCommand('enableObjectResizing', 'false', null);

    /** formatBlock
     * 添加一个HTML块式标签在包含当前选择的行, 如果已经存在了，更换包含该行的块元素 (在 Firefox中, BLOCKQUOTE 是一个例外 -它将包含任何包含块元素). 需要提供一个标签名称字符串作为参数。几乎所有的块样式标签都可以使用(例如. "H1", "P", "DL", "BLOCKQUOTE"). (IE浏览器仅仅支持标题标签 H1 - H6, ADDRESS, 和 PRE,使用时还必须包含标签分隔符 < >, 例如 "<H1>".) */
    document.execCommand('formatBlock', 'false', sTagName);

    /** removeFormat
     * 对所选内容去除所有格式 */
    document.execCommand('removeFormat', 'false', null);

    /** insertBrOnReturn
     * 控制当按下Enter键时，是插入 br 标签还是把当前块元素变成两个。(IE浏览器不支持) */
    document.execCommand('insertBrOnReturn', 'false', null);


    /**
     * 文字相关
     */

    /** justifyCenter
     * 对光标插入位置或者所选内容进行文字居中。 */
    document.execCommand('justifyCenter', 'false', null);

    /** justifyFull
     * 对光标插入位置或者所选内容进行文本对齐。 */
    document.execCommand('justifyFull', 'false', null);

    /** justifyLeft
     * 对光标插入位置或者所选内容进行左对齐。 */
    document.execCommand('justifyLeft', 'false', null);

    /** justifyRight
     * 对光标插入位置或者所选内容进行右对齐。 */
    document.execCommand('justifyRight', 'false', null);

    /** italic
     * 在光标插入点开启或关闭斜体字。 (Internet Explorer 使用 EM 标签，而不是 I ) */
    document.execCommand('italic', 'false', null);

    /** bold
     * 开启或关闭选中文字或插入点的粗体字效果。IE浏览器使用 <strong>标签，而不是<b>标签。 */
    document.execCommand('Bold', 'false', null);

    /** decreaseFontSize
     * 给选中文字加上 <small> 标签，或在选中点插入该标签。(IE浏览器不支持) */
    document.execCommand('decreaseFontSize', 'false', null);

    /** increaseFontSize
     * 在选择或插入点周围添加一个BIG标签。(IE浏览器不支持) */
    document.execCommand('increaseFontSize', 'false', null);

    /** fontName
     * 在插入点或者选中文字部分修改字体名称. 需要提供一个字体名称字符串 (例如："Arial")作为参数。 */
    document.execCommand('fontName', 'false', sFontName);

    /** fontSize
     * 在插入点或者选中文字部分修改字体大小. 需要提供一个HTML字体尺寸 (1-7) 作为参数。 */
    document.execCommand('fontSize', 'false', sFontSize);

    /** foreColor
     * 在插入点或者选中文字部分修改字体颜色. 需要提供一个颜色值字符串作为参数。 */
    document.execCommand('foreColor', 'false', sForeColor);

    /** heading
     * 添加一个标题标签在光标处或者所选文字上。 需要提供标签名称字符串作为参数 (例如. "H1", "H6"). (IE 和 Safari不支持) */
    document.execCommand('heading', 'false', sTagName);

    /** hiliteColor
     * 更改选择或插入点的背景颜色。需要一个颜色值字符串作为值参数传递。 UseCSS 必须开启此功能。(IE浏览器不支持) */
    document.execCommand('hiliteColor', 'false', sHiliteColor);

    /** insertOrderedList
     * 在插入点或者选中文字上创建一个有序列表 */
    document.execCommand('insertOrderedList', 'false', null);

    /** insertUnorderedList
     * 在插入点或者选中文字上创建一个无序列表。 */
    document.execCommand('insertUnorderedList', 'false', null);

    /** indent
     * 缩进选择或插入点所在的行， 在 Firefox 中, 如果选择多行，但是这些行存在不同级别的缩进, 只有缩进最少的行被缩进。 */
    document.execCommand('indent', 'false', null);

    /** outdent
     * 对光标插入行或者所选行内容减少缩进量。 */
    document.execCommand('outdent', 'false', null);


    /** insertHTML
     * 在插入点插入一个HTML字符串（删除选中的部分）。需要一个个HTML字符串作为参数。(IE浏览器不支持) */
    document.execCommand('insertHTML', 'false', sTagName);

    /** insertImage
     * 在插入点插入一张图片（删除选中的部分）。需要一个 URL 字符串作为参数。这个 URL 图片地址至少包含一个字符。空白字符也可以（IE会创建一个链接其值为null） */
    document.execCommand('insertImage', 'false', sURL);

    /** insertParagraph
     * 在选择或当前行周围插入一个段落。(IE会在插入点插入一个段落并删除选中的部分.) */
    document.execCommand('insertParagraph', 'false', null);

    /** insertHorizontalRule
     * 在插入点插入一个水平线（删除选中的部分） */
    document.execCommand('insertHorizontalRule', 'false', null);

    /** strikeThrough
     * 在光标插入点开启或关闭删除线。 */
    document.execCommand('strikeThrough', 'false', null);

    /*** underline
     * 在光标插入点开启或关闭下划线。*/
    document.execCommand('underline', 'false', null);

    /** subscript
     * 在光标插入点开启或关闭下角标。 */
    document.execCommand('subscript', 'false', null);

    /** superscript
     * 在光标插入点开启或关闭上角标。 */
    document.execCommand('superscript', 'false', null);

    /** createLink
     * 将选中内容创建为一个锚链接。这个命令需要一个hrefURI字符串作为参数值传入。URI必须包含至少一个字符，例如一个空格。（浏览器会创建一个空链接） */
    document.execCommand('CreateLink', 'false', sLinkURL);

    /***  unlink
     * 去除所选的锚链接的<a>标签 */
    document.execCommand('unlink', 'false', null);

    /***  CreateBookmark
     * 设置指定锚点为书签 */
    document.execCommand("CreateBookmark", "false", sAnchorName);
  </script>
</body>

</html>